home *** CD-ROM | disk | FTP | other *** search
/ Shareware Grab Bag / Shareware Grab Bag.iso / 081 / opus100a.arc / EVENTLST.ARC / EVENTLST.C next >
Encoding:
C/C++ Source or Header  |  1987-05-20  |  3.2 KB  |  114 lines

  1. #include <stdio.h>
  2. #include <opus.h>
  3.  
  4. void     main(argc,argv)
  5. int      argc;
  6. char     *argv[];
  7.  
  8. {
  9. char     *on;
  10. int      i,j,k;
  11. static struct   _sched recs[35];
  12. static struct   _time when[35];
  13. FILE     *infp;
  14.  
  15.        if (argc>1) infp=fopen(argv[1],"rb");
  16.  
  17.        else infp=fopen("SCHED.BBS","rb");
  18.  
  19.        if (infp){
  20.                  k = fread((char *)recs,34,35,infp);
  21.                  printf("");
  22.  
  23.                  printf("\n\nEvent Tag  Day   Start  Length");
  24.                  printf(" Run?     Exit  Mail  LO  CM  SX  MO  FR\n");
  25.  
  26.                  for (i=0;i<=34;i++){
  27.  
  28.                      when[i]=recs[i].time;
  29.                      k=when[i].daywk;
  30.  
  31.                         if (recs[i].enable == 1) on="ENA";
  32.                         if (recs[i].enable == 0) on="DEL";
  33.                         if (recs[i].enable>1 || recs[i].enable<0) on="DIS";
  34.  
  35.                      printf("\n %3u%4c",
  36.                      i,recs[i].tag);
  37.  
  38.                      dow(k);
  39.                      j=when[i].mins %10;
  40.                      k=(when[i].mins -j)/10;
  41.  
  42.                      printf("%4u:%1u%1u%8u%5s",when[i].hour,k,j,
  43.                      recs[i].len,on);
  44.  
  45.                      if (recs[i].event_mask & FORCE_EVENT)
  46.                         printf("  F");
  47.                      else (printf("   "));
  48.  
  49.                      if (recs[i].tag == 'X') printf("%5u",recs[i].result);
  50.                      if (recs[i].tag == 'Y') printf("%5u",recs[i].result);
  51.  
  52.                      k=recs[i].behavior;
  53.                      if (recs[i].result ==1) behave(k);
  54.                      if (recs[i].result ==2) printf("      House cleaning");
  55.  
  56.                  }
  57.          printf("\n\n\n");
  58.          }
  59.          else (printf("\n\n\t Bad read of file!\n\n\n"));
  60.  
  61.          fclose(infp);
  62.  
  63. }
  64.  
  65. dow(k)
  66. int   k;
  67.  
  68. {
  69. char    *days;
  70.                    switch (k) {
  71.  
  72.                          case 0:days="SUN";
  73.                               break;
  74.                          case 1:days="MON";
  75.                               break;
  76.                          case 2:days="TUE";
  77.                               break;
  78.                          case 3:days="WED";
  79.                               break;
  80.                          case 4:days="THU";
  81.                               break;
  82.                          case 5:days="FRI";
  83.                               break;
  84.                          case 6:days="SAT";
  85.                               break;
  86.                          case 7:days="ALL";
  87.                               break;
  88.                          default:days="ALL";
  89.                          }
  90.                   printf("%6s",days);
  91.                   return;
  92. }
  93.  
  94. behave(k)
  95. int      k;
  96.  
  97. {
  98. char    yep  = 'Y', no = 'N';
  99.  
  100.      if (k & NO_TRAFFIC) printf("%12c",no);
  101.      else printf("%12c",yep);
  102.      if (k & LOCAL_ONLY) printf("%5c",yep);
  103.      else printf("%5c",no);
  104.      if (k & OPUS_ONLY) printf("%4c",yep);
  105.      else printf("%4c",no);
  106.      if (k & NO_EXITS) printf("%4c",yep);
  107.      else printf("%4c",no);
  108.      if (k & MAIL_ONLY) printf("%4c",yep);
  109.      else printf("%4c",no);
  110.      if (k & TAKE_REQ) printf("%4c",yep);
  111.      else printf("%4c",no);
  112.      return;
  113. }
  114.